package com.guagua.chat.active;
/**
 * 北京八度互联科技有限公司版权所有
 * Copyright (C) Badu Corporation. All Rights Reserved
 */
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletResponse;

import net.sf.json.JSONArray;
import net.sf.json.JSONException;
import net.sf.json.JSONObject;

import com.guagua.chat.photo.Photo;
import com.guagua.chat.photo.PhotoDao;
import com.guagua.chat.room.ChatRoomUtil;
import com.guagua.chat.room.TBroadcast;
import com.guagua.vas.constants.CacheConstants;
import com.guagua.vas.constants.ConfigConstants;
import com.guagua.vas.redis.RedIsHandlerFactory;
import com.guagua.vas.util.CacheManager;
import com.guagua.vas.util.DateUtil;
import com.guagua.vas.util.HTTPUtil;
import com.guagua.vas.util.StringUtil;
/** ******************************************************************
* 类概要:活动管理类
 * @author 白云鹏
 * @version 2012年7月31日10:11:39
*******************************************************************/
public class ActiveManager {

	private static ActiveManager mgr = null;

	private ActiveManager() {}

	/**
	 * 函数说明：获取单例活动管理对象 <br/>
	 * 
	 * @return 返回结果说明. （ActiveManager）活动管理对象
	 */
	public static ActiveManager getInstance() {

		if (null == mgr) {
			mgr = new ActiveManager();
		}
		return mgr;
	}

	private ActiveDao dao = new ActiveDao();
	private PhotoDao phDao = new PhotoDao();
	
	public List getActiveById(long activeId){
		return dao.getActiveById(activeId);
	}
	
//	/**
//	 * 函数说明：根据房间ID获取所有活动 <br/>
//	 * 
//     * @param room_id
//	 *            类型:(long)；<br/> 房间ID<br/>；
//     * @param cookies
//	 *            类型:(Cookie[])；<br/> cookies信息<br/>；
//     * @param user_id
//	 *            类型:(long)；<br/> 访问用户ID<br/>；
//     * @param response
//	 *            类型:(HttpServletResponse)；<br/> 响应对象<br/>；
//	 * @return 返回结果说明. （List）活动集合
//	 */
//	public List getActive(long room_id, Cookie[] cookies, long user_id, HttpServletResponse response) {
//		List<HashMap> actives = new ArrayList();
//		String join_stat = null;
//		//获取当前时间，便于计算活动处于什么状态
//		String now = DateUtil.date2string(new Date(), "yyyy-MM-dd HH:mm");
//		//从缓存中获取活动信息
////		CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id));
//		actives = (List) CacheManager.getInstance().get(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id));
//		if (actives == null) {
//           //缓存中不存在，则从数据库中获取
//			actives = dao.getActive(room_id, 1);
//			//判断获取的数据是否存在还未结束的活动
//			if (actives.size() == 0) {
//				//如果不存在，则取已经结束的活动
//				actives = dao.getActive(room_id, 2);
//			}
//			for (HashMap active : actives) {
//				String startTime=(String) active.get("start_time");
//				active.put("start_time_str",startTime.substring(5,7)+"月"+startTime.substring(8,10)+"日"+startTime.substring(11));
//				active.put("end_time_str", ((String) active.get("end_time")).substring(5));
//				if (now.compareTo((String) active.get("end_time")) > 0) {
//					// 活动已结束
//					active.put("period", "2");
//				} else if (now.compareTo((String) active.get("start_time")) > 0) {
//					// 活动进行中
//					active.put("period", "1");
//					active.put("start_time_str","今日 "+startTime.substring(11));
//				} else{
//					// 活动未开始
//					active.put("period", "0");
//					long tempStarTimeLong = Long.parseLong(String.valueOf(active.get("start_time_long")));
//					long nowTimeLong = new Date().getTime();
//					if(tempStarTimeLong-nowTimeLong<=1000*60*10){// 10分钟之内
//						active.put("start_time_str",startTime.substring(11));
//						active.put("period", "3");
//					}else{//10分钟之外
//						if(tempStarTimeLong-nowTimeLong>ChatRoomUtil.getTimeUnitMillisecond()){//大于1天
//							active.put("start_time_str",startTime.substring(5,7)+"-"+startTime.substring(8,10)+" "+startTime.substring(11));
//							active.put("period", "4");
//						}else{//小于1天
//							active.put("start_time_str","今日 "+startTime.substring(11));
//							active.put("period", "5");
//						}
//					}
//				}
//			}
//			//将活动信息放入缓存中
//			CacheManager.getInstance().put(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id), actives,(long)30,TimeUnit.MINUTES);
//		}
//		// 判断参与者是否报名，将信息存储到cookie中
//		for (HashMap active : actives) {
//			if (cookies != null) {
//				for (int i = 0; i < cookies.length; i++) {
//					Cookie c = cookies[i];
//					if (c.getName().equalsIgnoreCase("joinerStat" + "_" + active.get("id") + "_" + room_id + "_" + user_id)) {
//						active.put("joinerStat", c.getValue());
//					}
//				}
//			}
//			if (active.get("joinerStat") == null) {
//				Active ac = new Active();
//				ac.setId((Long) active.get("id"));
//				ac.setUser_id(user_id);
//				ac.setRoom_id((Long) active.get("room_id"));
//				join_stat = dao.checkJoiner(ac) ? "1" : "0";
//				active.put("joinerStat", join_stat);
//
//				Cookie joinerStatCookie = new Cookie("joinerStat" + "_" + active.get("id") + "_" + room_id + "_" + user_id, join_stat);
//				joinerStatCookie.setMaxAge(60 * 60 * 24 * 365);
//				response.addCookie(joinerStatCookie);
//			}
//		}
//
//		return actives;
//	}
	/**
	 * 函数说明：
	 * 	分页 根据房间ID获取所有活动 <br/>
	 * 
     * @param room_id
	 *            类型:(long)；<br/> 房间ID<br/>；
     * @param cookies
	 *            类型:(Cookie[])；<br/> cookies信息<br/>；
     * @param user_id
	 *            类型:(long)；<br/> 访问用户ID<br/>；
     * @param response
	 *            类型:(HttpServletResponse)；<br/> 响应对象<br/>；
	 * @return 返回结果说明. （List）活动集合
	 */
	public List listActive(int currentPage,int pageSize,long room_id, Cookie[] cookies, long user_id, HttpServletResponse response) {
		List actives = new ArrayList();
		String join_stat = null;
		//获取当前时间，便于计算活动处于什么状态
		String now = DateUtil.date2string(new Date(), "yyyy-MM-dd HH:mm");
		//从缓存中获取活动信息
		if(currentPage==1){
//			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id));
			actives = (List) CacheManager.getInstance().get(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id));
		}else{
			actives = null;
		}
		Object[] arr = null;
		List<HashMap> tempList = null;
		if (actives == null) {
	           //缓存中不存在，则从数据库中获取
			arr =dao.listActive(currentPage,room_id, pageSize);
			tempList = (List<HashMap>)arr[0];

			actives = new ArrayList();
			if(currentPage==1){
				Map<String,String> mapRoomMsg = RedIsHandlerFactory.getInstance().getGuaguaRoomMsgMap(room_id);
				String room_name="此房间名称已过期";
				if(mapRoomMsg!=null && mapRoomMsg.size()>0){
					room_name=StringUtil.StringDecodeUtf8(mapRoomMsg.get(CacheConstants.ROOM_NAME));
				}
				for (HashMap active : tempList) {
					active.put("room_name",room_name);
				}
				actives.add(tempList);
				actives.add(arr[1]);
				CacheManager.getInstance().put(ChatRoomUtil.ROOMACTIVE_ROOM_ID(room_id), actives,(long)30,TimeUnit.MINUTES);
			}else{
				actives.add(tempList);
				actives.add(arr[1]);
			}
		}else{
			tempList = (List<HashMap>)actives.get(0);
			arr = new Object[2];
			arr[0] =   "";
			arr[1] =   actives.get(1);
		}
		for (HashMap active : tempList) {
			
			// 判断参与者是否报名，将信息存储到cookie中
			if (cookies != null) {
				for (int i = 0; i < cookies.length; i++) {
					Cookie c = cookies[i];
					if (c.getName().equalsIgnoreCase("joinerStat" + "_" + active.get("id") + "_" + active.get("room_id") + "_" + user_id)) {
						active.put("joinerStat", c.getValue());
					}
				}
			}
			if (active.get("joinerStat") == null) {
				Active ac = new Active();
				ac.setId((Long) active.get("id"));
				ac.setUser_id(user_id);
				ac.setRoom_id((Long) active.get("room_id"));
				join_stat = dao.checkJoiner(ac) ? "1" : "0";
				active.put("joinerStat", join_stat);

				Cookie joinerStatCookie = new Cookie("joinerStat" + "_" + active.get("id") + "_" + active.get("room_id") + "_" + user_id, join_stat);
				joinerStatCookie.setMaxAge(60 * 60 * 24 * 365);
				response.addCookie(joinerStatCookie);
			}
			//判断报名结束
			
			long tempStarTimeLong = Long.parseLong(String.valueOf(active.get("start_time_long")));
			String startTime=(String) active.get("start_time");
			active.put("start_time_str",startTime.substring(5,7)+"月"+startTime.substring(8,10)+"日"+startTime.substring(11));
			active.put("end_time_str", ((String) active.get("end_time")).substring(5));
			if (now.compareTo((String) active.get("end_time")) > 0) {
				// 活动已结束
				active.put("period", "2");
			} else if (now.compareTo((String) active.get("start_time")) > 0) {
				// 活动进行中
				active.put("period", "1");
				active.put("end_time_str", ((String) active.get("end_time")).substring(5));
			} else{
				startTime=(String) active.get("start_time");
				// 活动未开始
				active.put("period", "0");
				long nowTimeLong = new Date().getTime();
				if(tempStarTimeLong-nowTimeLong<=1000*60*10){// 10分钟之内
					active.put("start_time_str","今日 "+startTime.substring(11));
					active.put("period", "3");
				}else{//10分钟之外
					if(tempStarTimeLong-nowTimeLong>ChatRoomUtil.getTimeUnitMillisecond()){//大于1天
						active.put("start_time_str",startTime.substring(5,7)+"-"+startTime.substring(8,10)+" "+startTime.substring(11));
						active.put("period", "4");
					}else{//小于1天
						active.put("start_time_str","今日 "+startTime.substring(11));
						active.put("period", "5");
					}
				}
			}
			
			long tempEndTimeLong = Long.parseLong(String.valueOf(active.get("end_time_long")));
			String time_len = "";
			active.put("time_len", ChatRoomUtil.getEndTimeCompareStarTime(tempEndTimeLong,tempStarTimeLong));
		}
		actives = new ArrayList();
		actives.add(tempList);
		actives.add(arr[1]);
		return actives;
	}
	
	

	
	/**
	 * 函数说明：添加活动 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param photo
	 *            类型:(Photo)；<br/> 图片对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	  * 修改内容:修改活动公告文案与链接
	  * @version 2012-7-3 上午11:59:54
	  * @author  唐勇(tangyong@17guagua.com)
	  * *************************************
	  */
	public boolean addActive(Active active, Photo photo, long userid) {
		boolean flag = false;
		// 对图片地址进行处理
		if (photo.getPhoto_path().indexOf("?c=") > 0) {
			String imgPath = photo.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			imgPath = imgPath.substring(imgPath.indexOf("/"));
			photo.setPhoto_path(imgPath);
			photo.setCreator(userid);
			// 添加明星头像
			long photoID = phDao.addPhoto(photo);
			active.setImage(photoID);
		}
		//设置开始、结束时间
		active.setStart_time(DateUtil.date2long(active.getStartime_str(), "yyyy-MM-dd HH:mm"));
		active.setEnd_time(DateUtil.date2long(active.getEndtime_str(), "yyyy-MM-dd HH:mm"));
		active.setCreator(userid);
		//获取房间区根id 
		try{
			active.setRoom_catalog(getRootID(active.getRoom_id()));
		}catch (Exception e) {
			System.out.print("等正式运行的时候就有了。");
		}
		long activeId=dao.addActive(active);
		if (activeId>0) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
			if(active.getCenter_flag()==1){
				dao.toActive(activeId);
			}
			//发送消息
			Map<String, String> msg=new HashMap();
			msg.put("type", "1");
			msg.put("obs", active.getRoom_id()+"");
			String msg_content="";
			try {
				msg_content="本房间将于【"+active.getStartime_str()+"】举办【"+active.getActive_subject()+"】活动,欢迎大家踊跃参加";
				msg_content+="<a style=\"display:inline;\" id=\"smt\" href=\"guaguaURL:urlAddress.html\"><img src=\"../images/userinfo/chuanjian.gif\" alt=\"报名\" /></a>&nbsp;<font color=\"red\">(报名功能仅适用于呱呱4.0及以上版本)<font>";
				msg_content = java.net.URLEncoder.encode(msg_content,"UTF-8");
					}
			catch (UnsupportedEncodingException e) {
				
			}
			msg.put("content", msg_content);
			HTTPUtil.post(ConfigConstants.ROOM_INFO_URL+"news/broadcast",msg);
		}
		return flag;
	}
	/**
	 * 函数说明：获取正在运行的活动数量 <br/>
	 * 
	 * @return 返回结果正在活动的数量
	 */
	public int getActiveStartCount(Active active){
		if(active.getStart_time()<System.currentTimeMillis()){
			return -1;
		}
		return dao.getActiveStartCount(active);
	}
	/**
	 * 函数说明：添加活动 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param photo
	 *            类型:(Photo)；<br/> 图片对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	  * 修改内容:修改活动公告文案与链接
	  * @version 2012-7-3 上午11:59:54
	  * @author  唐勇(tangyong@17guagua.com)
	  * *************************************
	  */
	public boolean addActive(Active active,Photo photo, long userid, Photo file) {
		boolean flag = false;
		// 对图片地址进行处理
		if (photo.getPhoto_path().indexOf("?c=") > 0) {
			String imgPath = photo.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			imgPath = imgPath.substring(imgPath.indexOf("/"));
			photo.setPhoto_path(imgPath);
			photo.setCreator(userid);
			// 添加明星头像
			long photoID = phDao.addPhoto(photo);
			active.setImage(photoID);
		}
		// 对文件进行处理
		if (file.getPhoto_path().length()> 0) {
			//String imgPath = file.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			//imgPath = imgPath.substring(imgPath.indexOf("/"));
			//file.setPhoto_path(imgPath);
			file.setCreator(userid);
			// 添加明星头像
			long attachmentID = phDao.addPhoto(file);
			active.setAttachment(attachmentID);
		}
		
		//设置开始、结束时间
//		active.setStart_time(DateUtil.date2long(active.getStartime_str(), "yyyy-MM-dd HH:mm"));
//		active.setEnd_time(DateUtil.date2long(active.getEndtime_str(), "yyyy-MM-dd HH:mm"));
		active.setCreator(userid);
		//获取房间区根id 
		try{
			active.setRoom_catalog(getRootID(active.getRoom_id()));
		}catch (Exception e) {
			System.out.print("等正式运行的时候就有了。");
		}
		long activeId=dao.addActive(active);
		if (activeId>0) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
			if(active.getCenter_flag()==1){
				dao.toActive(activeId);
			}
			//发送消息
			Map<String, String> msg=new HashMap();
			msg.put("type", "1");
			msg.put("obs", active.getRoom_id()+"");
			String msg_content="";
			try {
				msg_content="本房间将于【"+active.getStartime_str()+"】举办【"+active.getActive_subject()+"】活动,欢迎大家踊跃参加";
				msg_content+="<a style=\"display:inline;\" id=\"smt\" href=\"guaguaURL:urlAddress.html\"><img src=\"../images/userinfo/chuanjian.gif\" alt=\"报名\" /></a>&nbsp;<font color=\"red\">(报名功能仅适用于呱呱4.0及以上版本)<font>";
				msg_content = java.net.URLEncoder.encode(msg_content,"UTF-8");
				msg.put("content", msg_content);
				HTTPUtil.post(ConfigConstants.ROOM_INFO_URL+"news/broadcast",msg);
			}catch (UnsupportedEncodingException e) {
				
			}
		}
		return flag;
	}
	/**
	 * 函数说明：更新编辑活动 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param photo
	 *            类型:(Photo)；<br/> 图片对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	 */
	public boolean editActive(Active active, Photo photo, long userid,Photo file) {
		boolean flag = false;
		// 对图片地址进行处理
		if (photo.getPhoto_path().indexOf("?c=") > 0) {
			String imgPath = photo.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			imgPath = imgPath.substring(imgPath.indexOf("/"));
			photo.setPhoto_path(imgPath);
			photo.setCreator(userid);
			// 添加明星头像
			long photoID = phDao.addPhoto(photo);
			active.setImage(photoID);
		}
		// 对文件附件地址进行处理
		if (file.getPhoto_path().length() > 0) {
			String imgPath = file.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			imgPath = imgPath.substring(imgPath.indexOf("/"));
			file.setPhoto_path(imgPath);
			file.setCreator(userid);
			// 添加明星头像
			long attachmentID = phDao.addPhoto(file);
			active.setAttachment(attachmentID);
		}
		active.setCreator(userid);
		//设置开始、结束时间
//		active.setStart_time(DateUtil.date2long(active.getStartime_str(), "yyyy-MM-dd HH:mm"));
//		active.setEnd_time(DateUtil.date2long(active.getEndtime_str(), "yyyy-MM-dd HH:mm"));
		if (dao.updateActive(active)) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
		}
		return flag;
	}
	/**
	 * 函数说明：更新编辑活动 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param photo
	 *            类型:(Photo)；<br/> 图片对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	 */
	public boolean editActive(Active active, Photo photo, long userid) {
		boolean flag = false;
		// 对图片地址进行处理
		if (photo.getPhoto_path().indexOf("?c=") > 0) {
			String imgPath = photo.getPhoto_path().replaceAll("http://", "").replaceAll("https://", "");
			imgPath = imgPath.substring(imgPath.indexOf("/"));
			photo.setPhoto_path(imgPath);
			photo.setCreator(userid);
			// 添加明星头像
			long photoID = phDao.addPhoto(photo);
			active.setImage(photoID);
		}
		active.setCreator(userid);
		if (dao.updateActive(active)) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
		}
		return flag;
	}
	/**
	 * 函数说明：删除活动 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param photo
	 *            类型:(Photo)；<br/> 图片对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	 */
	public boolean delActive(Active active, Photo photo) {
		boolean flag = false;
		//删除活动海报
		if (photo.getId()>0)
		     phDao.delPhoto(photo);
		
		//删除活动
		if (dao.delActive(active)) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
		}
		return flag;
	}
	/**
	 * 函数说明：添加活动报名者 <br/>
	 * 
     * @param active
	 *            类型:(Active)；<br/> 活动对象<br/>；
     * @param userid
	 *            类型:(long)；<br/> 用户ID<br/>；
	 * @return 返回结果说明. （boolean）是否操作成功，true为成功，false为失败
	 */
	public boolean addJoiner(Active active, long userid) {
		boolean flag = false;

		active.setUser_id(userid);
		// 报名参加活动

		if (dao.addJoiner(active)) {
			flag = true;
		}
		if(flag){//删除缓存
			CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(active.getRoom_id()));
		}
		return flag;

	}
	
	public boolean  checkJoiner(Active active, long userid){
		boolean flag = false;
		active.setUser_id(userid);
		// 判断是否已经报名
		flag = dao.checkJoiner(active);
		return flag;	
	}
	/**
	 * 函数说明：获取房间区根id <br/>
	 * 
     * @param room_id
	 *            类型:(long)；<br/> 房间id<br/>；
	 * @return 返回结果说明. （long）区根id
	 */
	public int getRootID(long room_id) {
		int id=0;
		String str=HTTPUtil.get(ConfigConstants.ROOM_INFO_DEFAULT+room_id);
        try{
          JSONArray array = new JSONArray(str);
		  JSONObject jsonObject = array.getJSONObject(0);
		  id=jsonObject.getInt("root_id");
        }catch (JSONException  e){
        	e.printStackTrace();
        }
		
		return id;

	}
	
	/**
	 * 函数说明：获取活动标签 <br/>
	 * 
	 * @return 返回结果说明. （String）区根id
	 */
	public String getActiveTag() {
		String tagJson="";
		//从公用redis中查询活动标签
		tagJson = RedIsHandlerFactory.getInstance().getActiveTag();
		if (tagJson==null){//如果没有活动标签，从数据库总查询
			tagJson="{}";
		}
		
		return tagJson;

	}
	/**
	 * 转播
	 * @param br
	 */
	public void saveBroadcast(TBroadcast br){
//		String key = "TBroadcast_"+br.getBroadcastor()+"_"+br.getActive_id();
//		CacheManager.getInstance().remove(key);
		CacheManager.getInstance().remove(ChatRoomUtil.ROOMACTIVE_ROOM_ID(br.getDes_room_id()));
		dao.saveBroadcast(br);
	}
	
	/**
	 * 获取用户的转播记录
	 * @param userId
	 * @return
	 */
	public List<TBroadcast> getBroadcastList(long userId,long activeid){
//		String key = "TBroadcast_"+userId+"_"+activeid;
//		List<TBroadcast> list = (List<TBroadcast>)CacheManager.getInstance().get(key);
//		if(list!=null){
//			return list;
//		}
//		list = dao.getBroadcastList(userId,activeid);
//		CacheManager.getInstance().put(key, list,5,TimeUnit.MINUTES);
//		return list;
		return dao.getBroadcastList(userId,activeid);
	}
	public boolean delZbActive(long activeid,long srcRoomid,long desRoomid,long uid){
		return dao.delZbActive(activeid,srcRoomid,desRoomid,uid);
	}
}
